package com.yfp.operation.mapper;

import com.yfp.operation.domain.UserWithdrawDetail;
import com.yfp.operation.domain.dto.UserWithdrawResponseInfoDTO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 用户提现明细表
 *
 *
 * @description 针对表【user_withdraw_detail(用户提现明细表)】的数据库操作Mapper
 * @createDate 2024-06-03 15:39:09
 * @Entity domain.com.yfp.operation.UserWithdrawDetail
 */
@Mapper
public interface UserWithdrawDetailMapper {

    /**
     * 新增
     *
     * @param userWithdrawId
     * @param userBillIds
     */
    void add(@Param("userWithdrawId") Long userWithdrawId, @Param("userBillIds") List<Long> userBillIds);

    List<UserWithdrawResponseInfoDTO> getUserWithdrawDetail(Long userWithdrawId);

    /**
     * 批量新增
     *
     * @param userWithdrawDetails
     */
    void adds(@Param("userWithdrawDetails") List<UserWithdrawDetail> userWithdrawDetails);

    /**
     * 修改状态和分账单号
     *
     * @param userWithdrawDetail
     */
    void editByBillId(UserWithdrawDetail userWithdrawDetail);

    /**
     * 查询提现详情
     *
     * @param userWithdrawId
     * @return
     */
    List<UserWithdrawDetail> getByUserWithdrawId(Long userWithdrawId);

    /**
     * 根据提现记录id获取分账订单id
     *
     * @param id
     * @return
     */
    List<Long> getUserBillIdByWithdrawId(Long id);
}




